package cn.com.bluemoon.daps.model.dto;

import cn.com.bluemoon.daps.common.enums.AuditCheckType;
import cn.com.bluemoon.daps.common.enums.DatabaseType;
import cn.com.bluemoon.daps.model.entity.DapDataModel;
import com.google.common.collect.Lists;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * 生成报告数据交互实体
 *
 * @author Jarod.Kong
 * @date 2020/9/25 14:50
 */
@Data
@Accessors
@EqualsAndHashCode
public class ModelDto {

    /**
     * 系统稽核的结果id {@see DapAuditSystemResult#getId()}
     * {@see AuditCheckType} 不同类型对应的id
     */
    private String sysAuditCheckResultId;

    /**
     * sysAuditMainResultId
     */
    private String sysAuditMainResultId;

    /**
     * 系统id，拥有建立系统和模型关系
     */
    private String systemId;

    /**
     * 指定生成的报告类型
     */
    private AuditCheckType checkType;
    /**
     * 模型信息
     */
    private DapDataModel model;

    /**
     * 2020年12月29日17:16:32增加模型对应的数据类型
     */
    private DatabaseType databaseType;

    /**
     * 模型下的表
     */
    private List<ModelTableDto> tableModelDtos = Lists.newArrayList();
}
